<?xml version="1.0" encoding="UTF-8"?>
<html>
    <head>
        <link type="text/css" rel="stylesheet" href="./css/template.css" />
        <link type="text/css" rel="stylesheet" href="./css/SyntaxHighlighter.css" />
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>CheckStyle</title>
        <script language="javascript" src="./js/shInit.js" />
        <script language="javascript" src="./js/shCore.js" />
        <script language="javascript" src="./js/shBrushCpp.js" />
        <script language="javascript" src="./js/shBrushCSharp.js" />
        <script language="javascript" src="./js/shBrushCss.js" />
        <script language="javascript" src="./js/shBrushDelphi.js" />
        <script language="javascript" src="./js/shBrushJava.js" />
        <script language="javascript" src="./js/shBrushJScript.js" />
        <script language="javascript" src="./js/shBrushPhp.js" />
        <script language="javascript" src="./js/shBrushPython.js" />
        <script language="javascript" src="./js/shBrushRuby.js" />
        <script language="javascript" src="./js/shBrushSql.js" />
        <script language="javascript" src="./js/shBrushVb.js" />
        <script language="javascript" src="./js/shBrushXml.js" />
        <keywords>Check Style, Eclipse, Java</keywords>
        <author>David Payet</author>
    </head>
    <body>
        <div class="chapter">
            <h2>1. Introduction</h2>
            <div class="subChapter">
                <h3>1.1.But de CheckStyle :</h3>
                <p>CheckStyle est un outil de développement créé par Olivier Burn dans le but d'aider à la conception de code respectant les standards du code Java. Il s'agit d'un plugin Eclipse qui analyse le code du projet pour voir si celui-ci respecte les normes établies par la communauté Java.</p>
            </div>
            <div class="subChapter">
                <h3>1.2.Résultat de l'analyse :</h3>
                <p>CheckStyle inspecte le code source à la recherche d'erreur dite de « style de codage » et ainsi grâce à la vue « Problem View » d'Eclipse, vous disposerez de la possibilité de voir les erreurs de style faîtes grâce à des annotations générées par l'IDE Eclipse.</p>
            </div>
            <div class="subChapter">
                <h3>1.3.Pourquoi utiliser CheckStyle:</h3>
                <p>CheckStyle parcourt votre code source à la recherche d'erreur de nommage de code, ce qui permet de respecter les normes et donc ainsi pouvoir disposer d'un code lisible et maintenable par une équipe de programmation.</p>
            </div>
            <div class="subChapter">
                <h3>1.4.Que faut-il pour pouvoir utiliser le plugin ?</h3>
                <p>
                    Pour pouvoir utiliser le plugin de façon optimale, il vous faut consulter la documentation qui lui est associée, disponible à l'adresse suivante :
                    <a href="http://checkstyle.sourceforge.net/" target="_blank">http://checkstyle.sourceforge.net/</a>
                    .
                </p>
            </div>
        </div>
        <div class="chapter">
            <h2>2.Installation</h2>
            <div class="subChapter">
                <h3>2.1.Récupérer le plugin :</h3>
                <p>
                    Deux méthodes d'installation sont disponibles : offline et online
					Si vous choisissez la méthode offline pour l'installation, il est indispensable de télécharger le plugin précédant l'installation à l'adresse suivante :
                    <a href="http://sourceforge.net/projects/eclipse-cs/" target="_blank">http://sourceforge.net/projects/eclipse-cs/</a>
                    .
                </p>
                <p>Dézippez le fichier téléchargé et vérifier que Eclipse soit fermé. Puis, copiez le plugin dans le dossier plugin d'Eclipse.
					Maintenant, vous serez en mesure d'utiliser ce plugin pour signaler les erreurs de style.</p>
                <p>L'autre moyen d'installation online est d'utiliser l'interface d'Eclipse en suivant la méthode suivante :</p>
                <ol>
                    <li>Dans Eclipse, dirigez-vous sur l'onglet Help &gt; Software updates &gt; Find and Install</li>
                    <li>Choisissez Search for new Feature and Install et cliquer sur Next</li>
                    <li>
                        Ajoutez, grâce au bouton New Remote Site, à vos liens le site suivant en lui donnant le nom « Plugin Check Style » :
                        <br />
                        <a href="http://eclipse-cs.sourceforge.net/update" target="_blank">http://eclipse-cs.sourceforge.net/update</a>
                        .
                    </li>
                    <li>Cliquez sur Finish pour rechercher les plugins disponibles</li>
                    <li>Sélectionnez dans la liste Plugin Check Style puis Next</li>
                    <li>Acceptez la license et enfin valider l'installation</li>
                </ol>
            </div>
            <div class="subChapter">
                <h3>2.2.Mode de fonctionnement :</h3>
                <p>Comme un « project builder » recherchant les erreurs et vérifiant la syntaxe du code, le plugin vérifie que les normes de nommage soient respectées. A chaque fois que vous modifiez et que vous enregistrez vos modifications, le plugin revérifie le style, et met sous forme d'annotation dans l'éditeur de code, les erreurs de style et indique dans la vue « Problem view » d'Eclipse la liste des erreurs.</p>
            </div>
        </div>
        <div class="chapter">
            <h2>3.Configuration du plugin</h2>
            <p>La gestion des erreurs de nommage est entièrement configurable. Vous pouvez ainsi définir un degré d'erreur pour chaque type de message. Une « Check Configuration » peut être créée et ainsi être appliquée sur plusieurs projets. La création d'une configuration de Check Style se fait par le biais de l'interface fournie avec le plugin, et vous pouvez ainsi utiliser un fichier existant de « Check Configuration » dans un répertoire de votre choix.</p>
            <div class="subChapter">
                <h3>3.1.Création d'une configuration</h3>
                <p>Création de notre « Check Configuration » :
					Dans Eclipse, dirigez-vous sur l'onglet Windows puis Preferences :
					Sélectionnez ensuite le noeud Check Style :</p>
                <img src="images/CheckStyle-Labo-Sun-v1.0_html_b4fa9d8.jpg" />
                <br />
                <p>Vous pouvez voir que dans la Configuration globale des vérifications Checkstyle, trois configurations sont déjà présentes. Vous avez la possibilité en cliquant sur Configurer de changer les propriétés déjà définies de ces configurations. Cliquez ensuite sur “Nouveau...” pour créer une nouvelle configuration :</p>
                <img src="images/CheckStyle-Labo-Sun-v1.0_html_42da00da.jpg" />
                <br />
                <p>La boîte de dialogue contenant les propriétés de “Check Configuration” apparaît. Les propriétés sont vides, et vous devez fournir certaines informations concernant votre nouvelle configuration.
					Choisissez tout d'abord le type de configuration vous voulez créer (quatre types sont disponibles : Configuration Interne, Configuration Externe, Configuration à distance et configuration relative au projet). Pour commencer, nous allons créer une configuration interne (dans ce cas, Localisation est grisé car il est considéré comme étant limité au workspace d’Eclipse). Renseignez le champ Nom ainsi que le champ Description qui permet d'indiquer la description de cette configuration.</p>
                <img src="images/CheckStyle-Labo-Sun-v1.0_html_m7eb2d63.jpg" />
                <br />
                <p>Après avoir fourni les informations, validez. Votre nouvelle configuration s'est maintenant ajouté à la liste des configurations globales.
					Vous pouvez à tout moment changer les propriétés de votre configuration en la sélectionnant puis en cliquant sur Propriétés.</p>
                <img src="images/CheckStyle-Labo-Sun-v1.0_html_m57a0ee2a.jpg" />
                <br />
                <p>Votre configuration est créée pourtant celle-ci est toujours vide car vous n’avez pas encore défini des “check”.</p>
            </div>
        </div>
        <div class="chapter">
            <h2>4.Configuration</h2>
            <p>Maintenant, cliquez sur “Configurer” pour mettre en place la stratégie de configuration des check. Cette écran montre tous les modules configurables :</p>
            <img src="images/CheckStyle-Labo-Sun-v1.0_html_5707c075.jpg" />
            <br />
            <p>A titre d'information, si vous ne spécifiez pas au moins un module configuré, votre configuration ne sera pas prise en compte et donc ne sera pas créée.
				Nous allons donc remplir le module "Import" avec un check d'import invalide et une sévérité mise à Warning modulant l'importance du message :</p>
            <img src="images/CheckStyle-Labo-Sun-v1.0_html_m27c60a1.jpg" />
            <br />
            <p>Vous verrez ensuite que votre configuration sera visible lorsque vous la validerez :</p>
            <img src="images/CheckStyle-Labo-Sun-v1.0_html_237127df.jpg" />
            <br />
            <p>Pour activer la configuration sur votre projet, sélectionnez “Ma première configuration" et cliquez sur "Set as Default" pour la mettre en place :</p>
            <img src="images/CheckStyle-Labo-Sun-v1.0_html_mb1714be.jpg" />
            <br />
            <p>A ce moment là, une boîte de dialogue vous demandera de recompiler vos projets pour prendre en compte cette configuration, acceptez.
				Vous pourrez ensuite tester votre check-configuration comme ceci :</p>
            <img src="images/CheckStyle-Labo-Sun-v1.0_html_m9928e70.jpg" />
            <br />
            <p>Une loupe apparaîtra marquant l’endroit de l’erreur de style.
				A ce stade, vous savez maintenant créer une configuration de check style et l'activer pour votre projet.</p>
        </div>
        <div class="chapter">
            <h2>5.Conclusion</h2>
            <p>En conclusion, CheckStyle nous permet d’avoir une syntaxe claire et précise dans tous nos projets. CheckStyle nous permet d'avoir un projet respectant les normes de la communauté Java tout en ayant la possibilité de créer nos propres règles de nommage.</p>
        </div>
    </body>
</html>

